package com.ruoyi.project.manage.project.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 项目导出
 *
 * @author FK 2022/4/29
 * @since v1.0.0
 **/
public class ProjectExport {
    @Excel(name = "项目名称")
    private String projectName;

    @Excel(name = "项目类型", dictType = "eb_project_type")
    private Integer projectType;

    @Excel(name = "所属产业", dictType = "eb_project_industry")
    private Integer projectIndustry;

    @Excel(name = "预计年产值")
    private BigDecimal projectWorthExpect;

    @Excel(name = "审批类型", dictType = "eb_approve_type")
    private Integer approveType;

    @Excel(name = "建设性质", dictType = "eb_construction_type")
    private Integer constructionType;

    @Excel(name = "项目标签", dictType = "eb_project_label")
    private String projectLabel;

    @Excel(name = "项目批次", dictType = "eb_project_batch")
    private Integer projectBatch;

    @Excel(name = "资金需求")
    private BigDecimal fundDemand;

    @Excel(name = "建设地点", dictType = "eb_project_area")
    private Integer projectArea;

    @Excel(name = "详细建设地点")
    private String projectAddress;

    @Excel(name = "经度")
    private String longitude;

    @Excel(name = "纬度")
    private String latitude;

    @Excel(name = "计划开工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date beginDatePlan;

    @Excel(name = "计划竣工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDatePlan;

    @Excel(name = "建设内容及规模")
    private String projectIntroduct;

    @Excel(name = "存在问题")
    private String projectProblem;

    @Excel(name = "建设单位名称")
    private String constructorName;

    @Excel(name = "统一社会信用代码")
    private String constructorCode;

    @Excel(name = "法人代表姓名")
    private String constructorCorp;

    @Excel(name = "联系人")
    private String contactPerson;

    @Excel(name = "手机号码")
    private String contactPhone;

    @Excel(name = "总投资")
    private BigDecimal totalInvest;

    @Excel(name = "完成投资")
    private BigDecimal doneInvest;

    @Excel(name = "实际到位资金")
    private BigDecimal actualInvest;

    @Excel(name = "计划投资")
    private BigDecimal planInvest;

    @Excel(name = "项目进度", dictType = "eb_project_progress")
    private Integer projectProgress;

    /** 项目阶段 */
    @Excel(name = "项目阶段", dictType = "eb_project_stage")
    private Integer projectStage;

    @Excel(name = "审批状态", dictType = "eb_approve_status")
    private Integer projectStatus;

    @Excel(name = "更新时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    public String getProjectName() {
        return projectName;
    }

    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }

    public Integer getProjectType() {
        return projectType;
    }

    public void setProjectType(Integer projectType) {
        this.projectType = projectType;
    }

    public String getProjectLabel() {
        return projectLabel;
    }

    public void setProjectLabel(String projectLabel) {
        this.projectLabel = projectLabel;
    }

    public Integer getProjectStatus() {
        return projectStatus;
    }

    public void setProjectStatus(Integer projectStatus) {
        this.projectStatus = projectStatus;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getProjectIndustry() {
        return projectIndustry;
    }

    public void setProjectIndustry(Integer projectIndustry) {
        this.projectIndustry = projectIndustry;
    }

    public BigDecimal getProjectWorthExpect() {
        return projectWorthExpect;
    }

    public void setProjectWorthExpect(BigDecimal projectWorthExpect) {
        this.projectWorthExpect = projectWorthExpect;
    }

    public Integer getApproveType() {
        return approveType;
    }

    public void setApproveType(Integer approveType) {
        this.approveType = approveType;
    }

    public Integer getConstructionType() {
        return constructionType;
    }

    public void setConstructionType(Integer constructionType) {
        this.constructionType = constructionType;
    }

    public Integer getProjectBatch() {
        return projectBatch;
    }

    public void setProjectBatch(Integer projectBatch) {
        this.projectBatch = projectBatch;
    }

    public BigDecimal getFundDemand() {
        return fundDemand;
    }

    public void setFundDemand(BigDecimal fundDemand) {
        this.fundDemand = fundDemand;
    }

    public Integer getProjectArea() {
        return projectArea;
    }

    public void setProjectArea(Integer projectArea) {
        this.projectArea = projectArea;
    }

    public String getProjectAddress() {
        return projectAddress;
    }

    public void setProjectAddress(String projectAddress) {
        this.projectAddress = projectAddress;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public Date getBeginDatePlan() {
        return beginDatePlan;
    }

    public void setBeginDatePlan(Date beginDatePlan) {
        this.beginDatePlan = beginDatePlan;
    }

    public Date getEndDatePlan() {
        return endDatePlan;
    }

    public void setEndDatePlan(Date endDatePlan) {
        this.endDatePlan = endDatePlan;
    }

    public String getProjectIntroduct() {
        return projectIntroduct;
    }

    public void setProjectIntroduct(String projectIntroduct) {
        this.projectIntroduct = projectIntroduct;
    }

    public String getProjectProblem() {
        return projectProblem;
    }

    public void setProjectProblem(String projectProblem) {
        this.projectProblem = projectProblem;
    }

    public String getConstructorName() {
        return constructorName;
    }

    public void setConstructorName(String constructorName) {
        this.constructorName = constructorName;
    }

    public String getConstructorCode() {
        return constructorCode;
    }

    public void setConstructorCode(String constructorCode) {
        this.constructorCode = constructorCode;
    }

    public String getConstructorCorp() {
        return constructorCorp;
    }

    public void setConstructorCorp(String constructorCorp) {
        this.constructorCorp = constructorCorp;
    }

    public String getContactPerson() {
        return contactPerson;
    }

    public void setContactPerson(String contactPerson) {
        this.contactPerson = contactPerson;
    }

    public String getContactPhone() {
        return contactPhone;
    }

    public void setContactPhone(String contactPhone) {
        this.contactPhone = contactPhone;
    }

    public BigDecimal getTotalInvest() {
        return totalInvest;
    }

    public void setTotalInvest(BigDecimal totalInvest) {
        this.totalInvest = totalInvest;
    }

    public BigDecimal getDoneInvest() {
        return doneInvest;
    }

    public void setDoneInvest(BigDecimal doneInvest) {
        this.doneInvest = doneInvest;
    }

    public BigDecimal getActualInvest() {
        return actualInvest;
    }

    public void setActualInvest(BigDecimal actualInvest) {
        this.actualInvest = actualInvest;
    }

    public BigDecimal getPlanInvest() {
        return planInvest;
    }

    public void setPlanInvest(BigDecimal planInvest) {
        this.planInvest = planInvest;
    }

    public Integer getProjectProgress() {
        return projectProgress;
    }

    public void setProjectProgress(Integer projectProgress) {
        this.projectProgress = projectProgress;
    }

    public Integer getProjectStage() {
        return projectStage;
    }

    public void setProjectStage(Integer projectStage) {
        this.projectStage = projectStage;
    }
}
